package cn.dmp.util

import java.util.Properties

import com.typesafe.config.{Config, ConfigFactory}


/**
  * 改程序所用到的相关参数
  */
object AppParams {

    /**
      * 解析application.conf
      */
    private lazy val load: Config = ConfigFactory.load()


    val driver = load.getString("db.default.driver")
    val url = load.getString("db.default.url")
    val user = load.getString("db.default.user")
    val password = load.getString("db.default.password")
    /**
      * 地域分布 方式旧
      */
    val provenceV1 = load.getString("db.default.table.provenceV3")
    /**
      * 地域分布 方式新
      */
    val provence = load.getString("db.default.table.provenceV3")
    /**
      * 运营商：
      */
    val ispname = load.getString("db.default.table.ispname")
    /**
      * 网络类型
      */
    val networkmannername = load.getString("db.default.table.networkmannername")
    /**
      * 设备类型
      */
    val devicetype = load.getString("db.default.table.devicetype")
    /**
      * 操作系统：
      */
    val client = load.getString("db.default.table.client")
    /**
      * 媒体分析
      */
    val appname = load.getString("db.default.table.appname")
    val appnameV2 = load.getString("db.default.table.appnameV2")
    /**
      * 运营商：
      */
    val storeurl = load.getString("db.default.table.storeurl")

    val jedisIp: String = load.getString("db.jedis.ip")
    val jedisNum: String = load.getString("db.jedis.num")
    val jedisImageNum: Int = load.getString("db.jedis.user.image").toInt

    val prop: Properties = new Properties()
    prop.setProperty("user", AppParams.user)
    prop.setProperty("password", AppParams.password)
    prop.setProperty("driver", AppParams.driver)


    val parquetOutPath: String = load.getString("parquet.outpath")

    val stopWordsPath: String = load.getString("stopWords.inputpath")

    import scala.collection.JavaConversions._

    // 设备操作系统
    val clientMap = load.getObject("repository.client").unwrapped().toMap
    // 设备联网方式
    val networkMap = load.getObject("repository.network").unwrapped().toMap
    // 设备运营商方式
    val ispnameMap = load.getObject("repository.ispname").unwrapped().toMap

}


